package com.qfjy.project.weixin.util.crypto;

import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.symmetric.AES;
import cn.hutool.crypto.symmetric.SymmetricAlgorithm;
import cn.hutool.crypto.symmetric.SymmetricCrypto;
import io.netty.util.CharsetUtil;

/**
 * todo AES加密解密工具类
 */
public class AesUtil {

    /**
     * 密钥一般保存起来(也要考虑后期定时修改)
     */
    private static String generateKey = "java2303java2303";
    private static byte[] key = generateKey.getBytes();
    private static AES aes = SecureUtil.aes(key);

    /**
     * todo 加密(明文) 返回是一个密文
     *
     * @param content 传递明文的数据
     */
    public static String encryptHexSet(String content) {
        // 加密为16进制表示
        String encryptHex = aes.encryptHex(content);
        return encryptHex;
    }


    /**
     * todo 解密(密文) 返回的是一个明文
     */
    public static String encryptHexGet(String encryptHex) {

        // 解密
        String decryptStr = aes.decryptStr(encryptHex, CharsetUtil.UTF_8);

        return decryptStr;
    }
}
